enum ClassConstants
{
        // Game Modes
		MODE_NORMAL = 0,
		MODE_FREE_SPIN = 1,
		NUM_GAME_MODES,

        // Notes
        NOTE_NONE = -1,
		NOTE_BILLY_BOB_SUBSTITUTION = 0,
		NOTE_BILLY_JO_SUBSTITUTION = 1,
		NOTE_BILLY_BUBBA_SUBSTITUTION = 2,
		NOTE_BILLY_BOB_BONUS = 3,
		NOTE_BILLY_JO_BONUS = 4,
		NOTE_BILLY_BUBBA_BONUS = 5,
		NOTE_FREE_SPIN = 6,

		//Multipliers
		MULTIPLIER_FREE_SPIN = 2,
		MULTIPLIER_HILLBILLY_NONE = 1,
		MULTIPLIER_HILLBILLY_2X = 2,
		MULTIPLIER_HILLBILLY_5X = 5

};

enum SpinResult
{
		EVT_LOSER,
		EVT_SCATTER_NEAR_MISS,
		EVT_FEATURE_NEAR_MISS,
		EVT_HILLBILLY_BONUS,
		EVT_TWO_KING,
		EVT_TWO_ACE,
		EVT_TWO_MOONSHINE,
		EVT_TWO_SHACK,
		EVT_TWO_HILLBILLY,
		EVT_TWO_PIG,
		EVT_TWO_DOG,
		EVT_THREE_NINE,
		EVT_THREE_TEN,
		EVT_THREE_JACK,
		EVT_THREE_QUEEN,
		EVT_THREE_KING,
		EVT_THREE_ACE,
		EVT_THREE_HILLBILLY,
		EVT_FOUR_NINE,
		EVT_FOUR_TEN,
		EVT_FOUR_JACK,
		EVT_FOUR_QUEEN,
		EVT_THREE_MOONSHINE,
		EVT_THREE_SHACK,
		EVT_FOUR_KING,
		EVT_FOUR_ACE,
		EVT_THREE_PIG,
		EVT_FOUR_MOONSHINE,
		EVT_FOUR_SHACK,
		EVT_THREE_DOG,
		EVT_FOUR_PIG,
		EVT_FIVE_NINE,
		EVT_FIVE_TEN,
		EVT_FIVE_JACK,
		EVT_FIVE_QUEEN,
		EVT_FIVE_KING,
		EVT_FIVE_ACE,
		EVT_FOUR_DOG,
		EVT_FIVE_MOONSHINE,
		EVT_FIVE_SHACK,
		EVT_FIVE_PIG,
		EVT_FIVE_DOG,
		EVT_FREE_GAME_FEATURE,
		EVT_RANDOM_PROGRESSIVE_WINNER,
		NUM_VALID_SPIN_RESULTS,
		EVT_INVALID,

#ifdef DEBUG_KNOWNSPINS

		EVT_DEBUG_DATA_SET_END,

		EVT_DEBUG_CUSTOM_STOPS,
		EVT_DEBUG_GAME_IDENTIFY = EVT_DEBUG_CUSTOM_STOPS,
		EVT_DEBUG_FREE_MODE_CHANGES,
		EVT_FIVE_NINE_POS_0,
		EVT_FIVE_NINE_POS_2,
		//EVT_DEBUG_SUBSTITUTE_LINE,
		//EVT_DEBUG_SUBSTITUTE_SCATTER,

		EVT_DEBUG_CUSTOM_FUNCTIONS,
		EVT_DEBUG_FUNCTION_REEL_CONFIG = EVT_DEBUG_CUSTOM_FUNCTIONS,
		EVT_DEBUG_FUNCTION_FEATURE_EXIT,
		EVT_DEBUG_FUNCTION_SCATTER_ITERATE,
		EVT_DEBUG_FUNCTION_PAY_LINE_ITERATE,
		EVT_DEBUG_FUNCTION_RANDOM_JACKPOT,
		EVT_DEBUG_FUNCTION_FEATURE_EXIT_WIN,

		EVT_DEBUG_MODIFY_NEXT_SPIN_FUNCTIONS,
		EVT_DEBUG_FUNCTION_RANDOM_JACKPOT_NEXT = EVT_DEBUG_MODIFY_NEXT_SPIN_FUNCTIONS,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_1,		
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_3,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_5,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_1_POS_0,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_3_POS_0,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_5_POS_0,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_1_POS_2,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_3_POS_2,
		EVT_DEBUG_FUNCTION_SUB_HILLBILLY_5_POS_2,
#endif
};

enum WheelContents
{
		ICON_NINE,
		ICON_TEN,
		ICON_JACK,
		ICON_QUEEN,
		ICON_KING,
		ICON_ACE,
		ICON_DOG,
		ICON_PIG,
		ICON_MOONSHINE,
		ICON_SHACK,
		ICON_BILLY_BOB,
		ICON_BILLY_BUBBA,
		ICON_BILLY_JO,
		NUM_VALID_ICONS,
		ICON_INVALID
};
